package top.goldenyear.porpoise.common.core.util.io;

import cn.hutool.v7.core.io.IORuntimeException;
import cn.hutool.v7.core.io.IoUtil;
import cn.hutool.v7.core.text.StrUtil;
import java.io.InputStream;

/**
 * IO 工具类，用于 {@link IoUtil} 缺失的方法
 *
 * @author Airhead
 */
public class IoUtils extends IoUtil {

  /**
   * 从流中读取 UTF8 编码的内容
   *
   * @param in 输入流
   * @param isClose 是否关闭
   * @return 内容
   * @throws IORuntimeException IO 异常
   */
  public static String readUtf8(InputStream in, boolean isClose) throws IORuntimeException {
    return StrUtil.utf8Str(IoUtil.read(in, isClose));
  }
}
